package com.school.campus.domain;

import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.school.common.annotation.Excel;
import com.school.common.core.domain.BaseEntity;

/**
 * 自动售货机对象 vending_machine
 *
 * @author wwj
 * @date 2025-11-04
 */
public class VendingMachine extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键，自增
     */
    private Long id;

    /**
     * 编号
     */
    @Excel(name = "编号")
    private String code;

    /**
     * 点位
     */
    @Excel(name = "点位")
    private String location;

    /**
     * 状态
     */
    @Excel(name = "状态")
    private Long status;

    /**
     * 最大容量
     */
    @Excel(name = "最大容量")
    private Long maxCapacity;

    /**
     * 当前容量
     */
    @Excel(name = "当前容量")
    private Long currentCapacity;

    /**
     * 货道行数
     */
    private Long rowCount;

    /**
     * 货道列数
     */
    private Long columnCount;

    /**
     * 负责人
     */
    @Excel(name = "负责人")
    private Long managerId;

    /**
     * 修改日期
     */
    private Date modifyDate;

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getCode() {
        return code;
    }

    public void setLocation(String location) {
        this.location = location;
    }

    public String getLocation() {
        return location;
    }

    public void setStatus(Long status) {
        this.status = status;
    }

    public Long getStatus() {
        return status;
    }

    public void setMaxCapacity(Long maxCapacity) {
        this.maxCapacity = maxCapacity;
    }

    public Long getMaxCapacity() {
        return maxCapacity;
    }

    public void setCurrentCapacity(Long currentCapacity) {
        this.currentCapacity = currentCapacity;
    }

    public Long getCurrentCapacity() {
        return currentCapacity;
    }

    public void setRowCount(Long rowCount) {
        this.rowCount = rowCount;
    }

    public Long getRowCount() {
        return rowCount;
    }

    public void setColumnCount(Long columnCount) {
        this.columnCount = columnCount;
    }

    public Long getColumnCount() {
        return columnCount;
    }

    public void setManagerId(Long managerId) {
        this.managerId = managerId;
    }

    public Long getManagerId() {
        return managerId;
    }

    public void setModifyDate(Date modifyDate) {
        this.modifyDate = modifyDate;
    }

    public Date getModifyDate() {
        return modifyDate;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("code", getCode())
                .append("location", getLocation())
                .append("status", getStatus())
                .append("maxCapacity", getMaxCapacity())
                .append("currentCapacity", getCurrentCapacity())
                .append("rowCount", getRowCount())
                .append("columnCount", getColumnCount())
                .append("managerId", getManagerId())
                .append("modifyDate", getModifyDate())
                .append("createTime", getCreateTime())
                .toString();
    }
}
